package com.huiztech.construction.mcp;

import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.tool.ToolCallbackProvider;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Bean;

@SpringBootApplication
public class McpClientApplication {

    public static void main(String[] args) {
        // 启动Spring Boot应用
        SpringApplication.run(McpClientApplication.class, args);
    }

    @Bean
    public ChatClient predefinedQuestions(
            ChatClient.Builder chatClientBuilder,
            ToolCallbackProvider tools,
            ConfigurableApplicationContext context) {
        ChatClient chatClient = chatClientBuilder.defaultSystem("""
                # 角色说明
                你是一名专业的城市轨道交通业务顾问AI.....

                ## 回复格式
                1.全部使用中文回复
                2.问题分析
                3.相关依据
                4.梳理和建议

                ** 特别注意 **
                - 不生成涉敏、涉政、虚假内容
                """).build();
        //可以设置 提示词模板 例如获取当前用户姓名
//        chatClient.prompt().system( p ->p.param("name",getName()))
        return chatClient;
    }

}
